
package cz.muni.fi.pa165.rentalofconstructionmachinery.dto.converters;

import cz.muni.fi.pa165.rentalofconstructionmachinery.dto.RentalDTO;
import cz.muni.fi.pa165.rentalofconstructionmachinery.entity.Rental;
import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author David Domonkos
 */
public class RentalDTOConverter {
    
    public static Rental dtoToEntity(RentalDTO dto) {
        Rental entity = new Rental();
        
        entity.setId(dto.getId());
        entity.setSince(dto.getSince());
        entity.setDuration(dto.getDuration());
        entity.setCustomer(CustomerDTOConverter.dtoToEntity(dto.getCustomer()));
        entity.setMachine(MachineDTOConverter.dtoToEntity(dto.getMachine()));
        
        return entity;
    }

    public static RentalDTO entityToDTO(Rental entity) {
        RentalDTO dto = new RentalDTO();
        
        dto.setId(entity.getId());
        dto.setSince(entity.getSince());
        dto.setDuration(entity.getDuration());
        dto.setCustomer(CustomerDTOConverter.entityToDTO(entity.getCustomer()));
        dto.setMachine(MachineDTOConverter.entityToDTO(entity.getMachine()));
        
        return dto;
    }
    
    public static List<RentalDTO> entityToDTOList(List<Rental> entities) {
        List<RentalDTO> dtos = new ArrayList();
        
        for (Rental entity: entities) {
            dtos.add(entityToDTO(entity));
        }
        
        return dtos;
    }
    
    public static List<Rental> dtoToEntityList(List<RentalDTO> dtos) {
        List<Rental> entities = new ArrayList();
        
        for (RentalDTO dto: dtos) {
            entities.add(dtoToEntity(dto));
        }
        
        return entities;
    }
}
